import 'package:backend.core/core/domain/entities/api/web/api_web_purchased_subscription_transaction_offer_type.dart';
import 'package:backend.core/core/domain/entities/web/web_purchased_subscription_transaction_offer_type.dart';

abstract class CreateApiWebPurchasedSubscriptionTransactionOfferTypeFromInternalOne {
  ApiWebPurchasedSubscriptionTransactionOfferType call({
    required WebPurchasedSubscriptionTransactionOfferType offerType,
  });
}

class CreateApiWebPurchasedSubscriptionTransactionOfferTypeFromInternalOneImpl
    implements CreateApiWebPurchasedSubscriptionTransactionOfferTypeFromInternalOne {
  const CreateApiWebPurchasedSubscriptionTransactionOfferTypeFromInternalOneImpl();

  @override
  ApiWebPurchasedSubscriptionTransactionOfferType call({
    required WebPurchasedSubscriptionTransactionOfferType offerType,
  }) {
    switch (offerType) {
      case WebPurchasedSubscriptionTransactionOfferType.regular:
        return ApiWebPurchasedSubscriptionTransactionOfferType.regular;
    }
  }
}
